1. Field of the Invention
The present invention relates to an improved encryption and authentication method and apparatus.
2. Description of the Related Art
In the prior art passwords are widely used for authenticating a user or a service on a computer. Passwords are also used for protecting archives, such as ZIP archives.
However, it is possible to bypass such password protection by simply testing an arbitrary number of bit combination or character combinations, also called brute forcing or simply forcing.
In the prior art of encryption several methods for authenticating an identity, for encrypting data, for generating checks sums and/or for generating hashes are available, wherein the security for not determining a used key is depending on the capabilities of the potential attackers. Many of these methods are considered by person skilled in the art to be secure against simply trying an arbitrary number of password patterns, often called brute forcing or forcing. Brute forcing or forcing tries to determine a password by trying all possible keys. Since the amount of keys that can be tested within a predetermined period can be very high by using modern computers or computer clusters, the evaluation, whether a key is safe or unsafe is determined by its length that may be evaluated by its length in bits. The performance of modern computers, supercomputers and computer clusters is so high that depending on the details of the used attack, the automatic testing of a very high number of keys may be achieved within a period that this accepted by the attacker. In other words, the safety of a key is higher the longer the information content in bits or its length is. A key that may be easily memorized by a human, particularly passwords, are often below a sufficient level of security.
In the prior art methods are known for to preventing testing different keys on a computer device, for example by introducing an idle time after entering a wrong key.
This reduces significantly the number of keys that can be tested within a predetermined period. Such methods can only be applied if the testing is done by a predetermined interface, such as a keyboard or a particular computer. An attack can circumvent the idle time if he uses a computer cluster for determining a password or can test an arbitrary number of passwords on his own computer system. Thereby, the number of keys to be tested within a predetermined period may be maximized. This is particularly true, if the attacker has physical access to the data archive or the computer.
In the prior art of encryption, methods are available to avoid circumvention of brute forcing algorithm complexity by appending a second sub key (called “salt”) to the user key before the hashing algorithm is carried out, such eliminating the possibility to use pre-calculated hashing tables or other simplification methods.
It is an object of the present invention to provide a more secure encryption and authentication method and apparatus.